package com.springboot.controller;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.springboot.pojo.User;
import com.springboot.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Map;

/**
 * @author gali
 * @date 2022/6/20 15:11
 */
@RestController
@RequestMapping("/user")
public class UserController {
    //在jvm中分出一块区间
    List<User> list = Collections.synchronizedList(new ArrayList<User>());

    @Autowired
    private UserService userService;

//    /**
//     * 增加用户
//     * @param user
//     * @return
//     */
//    @PostMapping("/")
//    public String addUser(User user){
////        list.add(user);
////        System.out.println(list);
//    userService.save(user);
//        return "success";
//    }
//
//    /**
//     * 删除用户
//     * @param id
//     * @return
//     */
//    @DeleteMapping("/{id}")
//    public String deleteUser(@PathVariable("id") Long id){
////        list.remove(getUser(id));
//        userService.removeById(id);
//        return "success";
//    }
//
//    /**
//     * 修改用户
//     * @param id
//     * @param user
//     * @return
//     */
//    @PutMapping("/{id}")
//    public String updateUser(@PathVariable("id") Long id,User user){
////        for (User user1 : list) {
////            if (user1.getId()==id){
////                user1.setName(user.getName());
////                user1.setAge(user.getAge());
////                return "success";
////            }
////        }
////        return "false";
//        userService.updateById(user);
//        return "success";
//    }
//
//    /**
//     * 查询单个用户
//     * @param id
//     * @return
//     */
//    @GetMapping("/{id}")
//    public User getUser(@PathVariable("id") Long id){
////        for (User user1 : list) {
////            if (user1.getId()==id){
////                return user1;
////            }
////        }
////        return null;
//      return   userService.getById(id);
//    }
//
//    /**
//     * 查询所有用户
//     * @return
//     */
//    @GetMapping("/")
//    public List<User> findAll(){
////        return list;
//        return userService.list();
//    }

    /**
     * 查看用户信息（登录）
     * @param username
     * @return
     */
    @GetMapping("/userInfo")
    public User getUserInfo(@RequestParam("username") String username){
        User userInfo = userService.getUserInfo(username);
        return userInfo;
    }

    /**
     * 注册用户
     * @param user
     * @return
     */
    @PostMapping("/addUser")
    public String registerUser(@RequestBody User user){
         userService.registerUser(user);
         return "注册用户成功";
    }

    /**
     * 更新用户密码
     * @param map
     * @return
     */
    @PutMapping("/updatePwd")
    public String updateUserPwd(@RequestBody Map<String,String> map){
        userService.updateUserPwd(map.get("oldPwd"),map.get("newPwd"));
        return "修改密码成功";
    }
}
